/*
 *  client_window.h
 */

#ifndef CLIENT_WINDOW_H
#define CLIENT_WINDOW_H

#include <gtkmm.h>
#include <gtkmm/window.h>
#include "app_listener.h"
#include "client_app.h"
#include "../../common/src/mutex.h"

class ClientWindow : public Gtk::Window, public AppListener {
public:
	ClientWindow(BaseObjectType* object,
			    const Glib::RefPtr<Gtk::Builder>& builder);
    ~ClientWindow();
    virtual void setApp(ClientApp* app);
    virtual bool on_delete_event(GdkEventAny* event);
protected:
    static const int STATUS_WAITING = 0;
    static const int STATUS_OK = 1;
    static const int STATUS_FAIL = -1;
    int status;
    ClientApp* app;
    Mutex mutex;
};

#endif //CLIENT_WINDOW_H

//{+}

